iT邦幫忙

0

30天 Leetcode挑戰_Day 17

  • 分享至 

  • xImage
  •  

本日耗時:38mins

  1. Next Permutation
class Solution {
public:
    void nextPermutation(vector<int>& a) {

         int n = a.size();
         int idx = -1;

         for(int i=n-2; i>=0; i--) {
            if(a[i] < a[i+1]) {
               idx = i;
               break;
            }
         }

         if(idx == -1) {
            reverse(a.begin(), a.end());
            return;
         }

         for(int i=n-1; i>idx; i--) {
             if(a[idx] < a[i]) {
                swap(a[i], a[idx]);
                break;
             }
         }
         
         reverse(a.begin()+idx+1, a.end());

    }
};

圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言